home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 3
/
Aminet 3 - July 1994.iso
/
Aminet
/
gfx
/
pbm
/
source1.lha
/
netpbm
/
pnm
/
SMakefile
< prev
next >
Wrap
Makefile
|
1994-02-28
|
7KB
|
229 lines
# Makefile for pnm tools.
#
# Copyright (C) 1989, 1991 by Jef Poskanzer.
#
# Modified by Robert A. Knop Jr. (rknop@cco.caltech.edu) 940126 for Amiga SAS/C
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
# that the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation. This software is provided "as is" without express or
# implied warranty.
# Default values, usually overridden by top-level Makefile.
#CC = cc
#CC = gcc -ansi -pedantic -fcombine-regs -fpcc-struct-return
CC = sc
#CFLAGS = -O
CFLAGS =
#CFLAGS = -g -O
TIFFDEF = DEFINE=LIBTIFF
TIFFINC = IDIR=/libtiff
TIFFLIB = /libtiff/libtiff.lib
TIFFBINARIES = tifftopnm pnmtotiff
TIFFOBJECTS = tifftopnm.o pnmtotiff.o
#LDFLAGS = -s
LDFLAGS =
INSTALLBINARIES = /bin
INSTALLSCRIPTS = $(INSTALLBINARIES)
INSTALLMANUALS1 = /man/man1
SUFFIXMANUALS1 = 1
INSTALLMANUALS3 = /man/man3
SUFFIXMANUALS3 = 3
INSTALLMANUALS5 = /man/man5
SUFFIXMANUALS5 = 5
MANCP = copy
PPMDIR = /ppm
INCLUDEPPM = IDIR=$(PPMDIR)
LIBPPM = $(PPMDIR)/libppm.lib
DEFPPM = $(PPMDIR)/ppm.h
DEFLIBPPM = $(PPMDIR)/libppm.h
PGMDIR = /pgm
INCLUDEPGM = IDIR=$(PGMDIR)
LIBPGM = $(PGMDIR)/libpgm.lib
DEFPGM = $(PGMDIR)/pgm.h
DEFLIBPGM = $(PGMDIR)/libpgm.h
PBMDIR = /pbm
INCLUDEPBM = IDIR=$(PBMDIR)
LIBPBM = $(PBMDIR)/libpbm.lib
DEFPBM = $(PBMDIR)/pbm.h /pbmplus.h
DEFLIBPBM = $(PBMDIR)/libpbm.h
#SHELL = /bin/sh
INCLUDE = IDIR=/ $(INCLUDEPPM) $(INCLUDEPGM) $(INCLUDEPBM)
ALLCFLAGS = $(CFLAGS) $(INCLUDE) $(TIFFDEF) $(TIFFINC)
LIBPNM = libpnm.lib
PORTBINARIES = pnmarith pnmcat pnmcrop pnmcut \
pnmdepth pnmenlarge pnmfile pnmflip pnminvert \
pnmnoraw pnmpad pnmpaste pnmtile \
pnmtorast pnmtosir pnmtoxwd \
rasttopnm sirtopnm xwdtopnm zeisstopnm
MATHBINARIES = fitstopnm pnmalias pnmgamma pnmnlfilt pnmrotate pnmshear \
pnmcomp giftopnm pnmhistmap pnmconvol pnmscale pnmtoddif \
pnmtofits pnmtops
BINARIES = $(PORTBINARIES) $(MATHBINARIES) $(TIFFBINARIES)
SCRIPTS = anytopnm pnmindex pnmmargin pnmsmooth pstopnm
PORTOBJECTS = fitstopnm giftopnm.o pnmalias.o \
pnmarith.o pnmcat.o pnmcomp.o pnmconvol.o pnmcrop.o pnmcut.o \
pnmdepth.o pnmenlarge.o pnmfile.o pnmflip.o pnmhistmap.o \
pnminvert.o pnmnoraw.o pnmpad.o pnmpaste.o \
pnmtile.o pnmtoddif.o pnmtofits.o pnmtops.o pnmtorast.o \
pnmtosir.o pnmtoxwd.o \
rasttopnm.o sirtopnm.o xwdtopnm.o zeisstopnm.o \
pnmgamma.o pnmnlfilt.o pnmrotate.o pnmscale.o pnmshear.o
OBJECTS = $(PORTOBJECTS) $(TIFFOBJECTS)
MANUALS1 = $(BINARIES) $(SCRIPTS)
MANUALS3 = libpnm
MANUALS5 = pnm
all: binaries
#all: merge
install: install.bin
#install: install.merge
binaries: $(BINARIES)
install.bin: binaries $(SCRIPTS)
# cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
copy $(BINARIES) TO $(INSTALLBINARIES) CLONE
# cd $(INSTALLSCRIPTS) ; rm -f $(SCRIPTS)
execute < <(T:install_man.temp)
foreach i in $(SCRIPTS)
protect $${i} +s
end
<
copy $(SCRIPTS) TO $(INSTALLSCRIPTS) CLONE
# cd $(INSTALLSCRIPTS) ; chmod +x $(SCRIPTS)
#merge: pnmmerge
#pnmmerge: pnmmerge.c $(OBJECTS) $(LIBPNM) $(LIBPPM) $(LIBPGM) $(LIBPBM)
# $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(OBJECTS) -lm $(LIBPNM) $(LIBPPM) $(LIBPGM) $(LIBPBM) $(TIFFLIB)
#
#install.merge: install.pnmmerge $(SCRIPTS)
#install.pnmmerge: pnmmerge
# cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
# cp pnmmerge $(INSTALLBINARIES)
# cd $(INSTALLBINARIES) ; for i in $(BINARIES) ; do ln pnmmerge $$i ; done
# rm -f $(INSTALLBINARIES)/pnmmerge
# cd $(INSTALLSCRIPTS) ; rm -f $(SCRIPTS)
# cp $(SCRIPTS) $(INSTALLSCRIPTS)
# cd $(INSTALLSCRIPTS) ; chmod +x $(SCRIPTS)
install.man:
execute < <(T:install_man.temp)
foreach i in $(MANUALS1)
delete $(INSTALLMANUALS1)/$${i}.$(SUFFIXMANUALS1)
$(MANCP) $${i}.1 $(INSTALLMANUALS1)/$${i}.$(SUFFIXMANUALS1)
end
<
execute < <(T:install_man.temp)
foreach i in $(MANUALS3)
delete $(INSTALLMANUALS3)/$${i}.$(SUFFIXMANUALS3)
$(MANCP) $${i}.3 $(INSTALLMANUALS3)/$${i}.$(SUFFIXMANUALS3)
end
<
execute < <(T:install_man.temp)
foreach i in $(MANUALS5)
delete $(INSTALLMANUALS5)/$${i}.$(SUFFIXMANUALS5)
$(MANCP) $${i}.5 $(INSTALLMANUALS5)/$${i}.$(SUFFIXMANUALS5)
end
<
# Rules for plain programs.
$(PORTBINARIES) $(TIFFBINARIES): pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) $(LIBPNM) $(LIBPPM) $(LIBPGM) $(LIBPBM) $(TIFFLIB)
$(CC) $(ALLCFLAGS) $(LDFLAGS) LINK $@.c $(LIBPNM) $(LIBPPM) $(LIBPGM) $(LIBPBM) $(TIFFLIB)
# Rule for math-dependent programs.
$(MATHBINARIES): pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) $(LIBPNM) \
$(LIBPPM) $(LIBPGM) $(LIBPBM)
$(CC) $(ALLCFLAGS) $(LDFLAGS) MATH=I LINK $@.c $(LIBPNM) $(LIBPPM) $(LIBPGM) $(LIBPBM)
# commented out until merge supported RKNOP 931107
# Rule for objects.
#$(OBJECTS): pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM)
# $(CC) $(ALLCFLAGS) "-Dmain=$*_main" -c $*.c
# And libraries.
$(LIBPBM):
execute < <(T:smake_temp.com)
cd $(PBMDIR)
smake lib
<
$(LIBPGM) FOO:
execute < <(T:smake_temp.com)
cd $(PGMDIR)
smake lib
<
$(LIBPPM) BAR:
execute < <(T:smake_temp.com)
cd $(PPMDIR)
smake lib
<
lib: $(LIBPNM)
$(LIBPNM): libpnm1.o libpnm2.o libpnm3.o libpnm4.o
-delete $(LIBPNM)
oml $(LIBPNM) r libpnm1.o libpnm2.o libpnm3.o libpnm4.o
libpnm1.o: pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) libpnm1.c
$(CC) $(ALLCFLAGS) NOLINK libpnm1.c
libpnm2.o: pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) libpnm2.c $(DEFLIBPPM) \
$(DEFLIBPGM) $(DEFLIBPBM)
$(CC) $(ALLCFLAGS) NOLINK libpnm2.c
libpnm3.o: pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) libpnm3.c $(DEFLIBPPM) \
$(DEFLIBPGM) $(DEFLIBPBM)
$(CC) $(ALLCFLAGS) NOLINK libpnm3.c
libpnm4.o: pnm.h $(DEFPPM) $(DEFPGM) $(DEFPBM) rast.h libpnm4.c
$(CC) $(ALLCFLAGS) NOLINK libpnm4.c
# Other dependencies.
fitstopnm fitstopnm.o: fitstopnm.c
giftopnm giftopnm.o: giftopnm.c
pnmalias pnmalias.o: pnmalias.c
pnmarith pnmarith.o: pnmarith.c
pnmcat pnmcat.o: pnmcat.c
pnmcomp pnmcomp.o: pnmcomp.c
pnmconvol pnmconvol.o: pnmconvol.c
pnmcrop pnmcrop.o: pnmcrop.c
pnmcut pnmcut.o: pnmcut.c
pnmdepth pnmdepth.o: pnmdepth.c
pnmenlarge pnmenlarge.o: pnmenlarge.c
pnmfile pnmfile.o: pnmfile.c
pnmflip pnmflip.o: pnmflip.c
pnmgamma pnmgamma.o: pnmgamma.c
pnmhistmap pnmhistmap.o: pnmhistmap.c
pnminvert pnminvert.o: pnminvert.c
pnmnoraw pnmnoraw.o: pnmnoraw.c
pnmpad pnmpad.o: pnmpad.c
pnmpaste pnmpaste.o: pnmpaste.c
pnmrotate pnmrotate.o: pnmrotate.c
pnmscale pnmscale.o: pnmscale.c
pnmshear pnmshear.o: pnmshear.c
pnmtile pnmtile.o: pnmtile.c
pnmtoddif pnmtoddif.o: pnmtoddif.c
pnmtofits pnmtofits.o: pnmtofits.c
pnmtops pnmtops.o: pnmtops.c
pnmtosir pnmtosir.o: pnmtosir.c
pnmtorast pnmtorast.o: pnmtorast.c rast.h
pnmtotiff pnmtotiff.o: pnmtotiff.c
pnmtoxwd pnmtoxwd.o: pnmtoxwd.c x11wd.h
rasttopnm rasttopnm.o: rasttopnm.c rast.h
sirtopnm sirtopnm.o: sirtopnm.c
tifftopnm tifftopnm.o: tifftopnm.c
xwdtopnm xwdtopnm.o: xwdtopnm.c x10wd.h x11wd.h
zeisstopnm zeisstopnm.o: zeisstopnm.c
clean:
delete *.o *.lib *.lnk $(BINARIES)